還在請工讀生來當小編自動回文嗎?這麼麻煩的事情當然交給 server 去做啊!這篇將會介紹之前自己玩過的自動回文小編。
整體的概念
User ➡️ 在 Fb 粉專動作(按讚、訊息、留言 ... )➡️ 觸發 FB webhook ➡️ webhook 送訊息到 ngrok ➡️ ngrok 送訊息到本地端 server
大致步驟
下載 ngrok
git clone demoBot
git clone git@github.com:Jonec76/demoBot.git
執行本地端( /demoBot )
這邊是使用 express
這個架構去啟動 server,如果有不太清處的地方建議參考 express
的官方文件唷!
(不提供 config.json
,歡迎跟我要或者 trace code )
$ npm install
$ npm run start
執行 ngrok
$ ./ngrok http 3000
開啟 ngrok
到 facebook for developer-Webhook
config.json
裡的 webhook
是一樣的,這邊的意思就是說是 FB 粉專勾選過的服務,都會往這個回呼網址傳,這個網址現在指在 ngrok 的網址,ngrok 網址指到 localhost(也就是本地端開的 server)更改 config.json
的 token
因為 access token 會過期,所以在每次啟動 server 的時候都要重新取得(或是有其他方法得到永久的 token,但這邊不詳述),而取得新的 token 可以參考下方連結,大致是前往 Graph API,把要的粉專綁到指定的 app,取得粉專的 access token (更改 field) 即可
如果做到第 5 點時,能夠在 developer 頁面驗證過,而且本地的 server 也有接到,那就表示整個流程已經串成功囉!下一篇將會介紹如果去監聽特定的 FB 貼文!